Skip to content

Improve dev tooling and expand test coverage#26

Merged
dannywillems merged 9 commits intomainfrom
improve-dev-tooling
Feb 1, 2026
Merged

Improve dev tooling and expand test coverage#26
dannywillems merged 9 commits intomainfrom
improve-dev-tooling

Conversation

@dannywillems
Copy link
Contributor

Summary

  • Add Makefile with standard development targets
  • Add .editorconfig for consistent editor settings
  • Replace black + pylint with ruff for linting and formatting
  • Add pytest-cov for test coverage reporting
  • Replace star imports with explicit imports
  • Expand test coverage from 3 to 70 tests
  • Add CHANGELOG.md with clickable commit/PR links
  • Update CI workflow to use ruff

Test plan

  • All 70 tests pass (make test)
  • Linting passes (make lint)
  • Format check passes (make check-format)
  • CI workflow updated for ruff

- Add comprehensive Makefile with standard targets (help, test, lint, etc.)
- Add .editorconfig for consistent editor settings
- Replace black + pylint with ruff for linting and formatting
- Add pytest-cov for coverage reporting
- Configure mypy with strict settings
- Configure pytest with verbose output
- Fix star imports in leakix/__init__.py with explicit re-exports
- Fix star imports in leakix/client.py with specific imports
- Apply ruff auto-fixes (f-strings, modern super() calls, etc.)
- Add __all__ to __init__.py for clear public API
- Add comprehensive tests for Client class initialization
- Add tests for all API methods (get, get_service, get_leak, etc.)
- Add tests for query classes (MustQuery, MustNotQuery, ShouldQuery, etc.)
- Add tests for field filters (TimeField, PortField, CountryField, etc.)
- Add tests for response classes (SuccessResponse, ErrorResponse, etc.)
- Test error handling and edge cases
- Replace black check with ruff format check
- Add ruff lint check step
- Fix typo: example_get_subdomain -> example_get_subdomains
- Apply ruff import sorting and formatting fixes
- Update CI to use Makefile targets (install, test, check-format, lint, audit)
- Separate Windows job since make is not available
- Fix formatting issues in example_client.py, field.py, response.py
Move GNU sed check inside the target recipe so it only fails when
fix-trailing-whitespace is actually invoked, not at Makefile parse time.
- Add step to install GNU sed via brew on macOS runners
- Revert Makefile to original gsed check at parse time
@dannywillems dannywillems merged commit 50cf840 into main Feb 1, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant